import pandas as pd
import plotly.express as px
import plotly.io as pio
pio.renderers.default = "notebook"
pd.set_option('display.max_colwidth', None)
d1 = pd.read_csv("pd0.csv")
d1
| tempo | triplas | |
|---|---|---|
| 0 | 34.425566 | 100 |
Exemplo de consulta:
prefix owl: \http://www.w3.org/2002/07/owl#\
prefix rdfs: \http://www.w3.org/2000/01/rdf-schema#\
select * where {
?s a <http://www.sefaz.ma.gov.br/ontology/Acordao>;
?p ?o.
} LIMIT 100
d2 = pd.read_csv("pd1.csv")
d2
| tempo | classe | triplas | |
|---|---|---|---|
| 0 | 1.855567 | Acórdão | 100 |
| 1 | 3.355824 | Agente | 100 |
| 2 | 1.057964 | Arma | 100 |
| 3 | 0.594845 | Arquivo | 100 |
| 4 | 0.407999 | Ativa | 0 |
| ... | ... | ... | ... |
| 158 | 0.574272 | Unidade Federativa | Estado | 100 |
| 159 | 0.561003 | Unidade Fiscal | 32 |
| 160 | 2.927668 | Usuário | 100 |
| 161 | 2.777716 | Órgão | 100 |
| 162 | 3.366638 | Evento | 100 |
163 rows × 3 columns
p = {'inválidas':d2[(d2['triplas']==0) | (d2['triplas']==-1)].shape[0],'válidas':d2.shape[0]-d2[(d2['triplas']==0) | (d2['triplas']==-1)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de classes válidas')
fig.show()
d2['timeout'] = 'Não'
d2.loc[d2['triplas']==-1,'timeout'] = 'Sim'
p= d2['timeout'].value_counts().reset_index(name="count")
fig = px.pie(p,values='count', names='index', title='Percentual de classes com erros')
fig.show()
d2[d2['triplas']==-1]
| tempo | classe | triplas | timeout | |
|---|---|---|---|---|
| 37 | 1144.800798 | Documento Fiscal | -1 | Sim |
| 43 | 1200.101011 | Empresa | Organização | Pessoa Jurídica RFB | -1 | Sim |
| 83 | 976.759163 | Item | -1 | Sim |
p = {'vazias':d2[d2['triplas']==0].shape[0],'povoadas':d2.shape[0]-d2[d2['triplas']==0].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de classes vazias')
fig.show()
d2[d2['triplas']==0]
| tempo | classe | triplas | timeout | |
|---|---|---|---|---|
| 4 | 0.407999 | Ativa | 0 | Não |
| 8 | 2.198421 | Baixa de Ofício | 0 | Não |
| 10 | 0.444372 | Baixada | 0 | Não |
| 13 | 0.437021 | Cancelada | 0 | Não |
| 21 | 0.496367 | Conceito | 0 | Não |
| 32 | 1.071747 | Contribuinte PEM | 0 | Não |
| 46 | 1.714817 | Endereço C115 | 0 | Não |
| 48 | 0.419757 | Endereço C115 Comunicação | 0 | Não |
| 49 | 0.468519 | Endereço C115 Energia | 0 | Não |
| 50 | 0.444803 | Endereço C115 Telecomunicação | 0 | Não |
| 51 | 0.507879 | Endereço Cadastro Sefaz | 0 | Não |
| 53 | 0.418091 | Endereço NFE | 0 | Não |
| 55 | 0.419074 | Endereço REDESIM | 0 | Não |
| 57 | 0.411250 | Endereço RFB | 0 | Não |
| 65 | 0.448497 | Estabelecimento SEFAZ | 0 | Não |
| 67 | 0.872200 | Excluso / Removido do SIMPLES | 0 | Não |
| 68 | 0.412233 | Exigência | 0 | Não |
| 80 | 0.414138 | Inapta | 0 | Não |
| 89 | 0.475987 | Nula | 0 | Não |
| 92 | 0.476758 | Não optante pelo SIMPLES | 0 | Não |
| 95 | 3.806538 | Optante pelo SIMPLES | 0 | Não |
| 106 | 0.415821 | Processo de Baixa | 0 | Não |
| 107 | 0.412978 | Processo de Baixa | 0 | Não |
| 108 | 1.560629 | Processo de Suspensão | 0 | Não |
| 109 | 0.451615 | Processo de Suspensão | 0 | Não |
| 127 | 0.460739 | Situação Cadastral SEFAZ | 0 | Não |
| 141 | 0.472223 | Suspensa | 0 | Não |
| 143 | 0.437323 | Suspensa de Ofício | 0 | Não |
validas = d2[(d2['triplas']!=0) & (d2['triplas']!=-1)]
fig = px.histogram(validas, x="tempo",title="histograma de tempo de execução")
fig.show()
fig = px.histogram(validas[validas['tempo']<=19], x="tempo",title="histograma de tempo de execução, quando tempo [0,19]")
fig.show()
Estatísticas para consultas com tempo [0,20)
validas[validas['tempo']<20].describe()
| tempo | triplas | |
|---|---|---|
| count | 127.000000 | 127.000000 |
| mean | 2.112950 | 91.944882 |
| std | 2.087406 | 24.095151 |
| min | 0.561003 | 6.000000 |
| 25% | 0.728719 | 100.000000 |
| 50% | 1.461819 | 100.000000 |
| 75% | 2.742694 | 100.000000 |
| max | 15.814184 | 100.000000 |
fig = px.histogram(validas[validas['tempo']>=20], x="tempo",title="histograma de tempo de execução, quando tempo [20,inf]")
fig.show()
Consultas com tempo [20,inf)
validas[validas['tempo']>=20].sort_values(by="tempo",ascending=False)
| tempo | classe | triplas | timeout | |
|---|---|---|---|---|
| 86 | 372.227994 | Medicamento | 100 | Não |
| 110 | 266.719415 | Produto | 100 | Não |
| 116 | 224.102503 | Registro Desabilitado | 100 | Não |
| 100 | 48.078145 | Pessoa Física | 100 | Não |
| 145 | 38.369179 | Sócio | 100 | Não |
Exemplo:
prefix owl: \http://www.w3.org/2002/07/owl#\
prefix rdfs: \http://www.w3.org/2000/01/rdf-schema#\
select * where {
<http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/14769662491-10_05_2017-00371520167> ?p ?o.
} LIMIT 100
d3 = pd.read_csv("pd2.csv")
d3
| tempo | classe | triplas | |
|---|---|---|---|
| 0 | 0.690983 | Acórdão | 5 |
| 1 | 0.521001 | Agente | 5 |
| 2 | 4.344489 | Arma | 8 |
| 3 | 1.958775 | Arquivo | 12 |
| 4 | 0.531290 | Ativa | 9 |
| ... | ... | ... | ... |
| 127 | 0.506172 | Unidade Federativa | Estado | 5 |
| 128 | 0.484128 | Unidade Fiscal | 4 |
| 129 | 4.799828 | Usuário | 4 |
| 130 | 0.603720 | Órgão | 9 |
| 131 | 2.326323 | Evento | 49 |
132 rows × 3 columns
d3[(d3['triplas']==0) | (d3['triplas']==-1)]
| tempo | classe | triplas |
|---|
validas = d3[(d3['triplas']!=0) & (d3['triplas']!=-1)]
fig = px.histogram(validas, x="tempo",title="histograma de tempo de execução")
fig.show()
fig = px.histogram(validas[validas['tempo']<5], x="tempo",title="histograma de tempo de execução, quando tempo [0,5)")
fig.show()
Estatísticas para consultas com tempo [0,5)
validas[validas['tempo']<5].describe()
| tempo | triplas | |
|---|---|---|
| count | 123.000000 | 123.000000 |
| mean | 1.201770 | 10.032520 |
| std | 1.232487 | 10.754286 |
| min | 0.066559 | 2.000000 |
| 25% | 0.491442 | 5.500000 |
| 50% | 0.603720 | 8.000000 |
| 75% | 1.427953 | 11.500000 |
| max | 4.857723 | 100.000000 |
fig = px.histogram(validas[(validas['tempo']>=5) & (validas['tempo']<50)], x="tempo",title="histograma de tempo de execução, quando tempo [5,49]")
fig.show()
Estatísticas para consultas com tempo [5,inf)
validas[validas['tempo']>=5].describe()
| tempo | triplas | |
|---|---|---|
| count | 9.000000 | 9.000000 |
| mean | 14.160358 | 15.888889 |
| std | 9.679509 | 13.327082 |
| min | 5.187233 | 4.000000 |
| 25% | 6.044791 | 6.000000 |
| 50% | 9.719405 | 13.000000 |
| 75% | 24.643040 | 16.000000 |
| max | 28.881776 | 38.000000 |
Consultas com tempo [5,inf)
validas[validas['tempo']>=5].sort_values(by="tempo",ascending=False)
| tempo | classe | triplas | |
|---|---|---|---|
| 82 | 28.881776 | Produto | 6 |
| 17 | 26.374334 | Consumidor | 13 |
| 65 | 24.643040 | Medicamento | 6 |
| 15 | 12.604880 | Combustível | 4 |
| 69 | 9.719405 | Não Contribuinte | 6 |
| 45 | 8.115813 | Estabelecimento | 38 |
| 77 | 6.044791 | Pessoa Física Cadastro SEFAZ | 16 |
| 18 | 5.871949 | Contador | 16 |
| 48 | 5.187233 | Estabelecimento SEFAZ | 38 |
Exemplo:
prefix owl: \http://www.w3.org/2002/07/owl#\
prefix rdfs: \http://www.w3.org/2000/01/rdf-schema#\
select * where {
<http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/14769662491-10_05_2017-00371520167> rdfs:label ?o.
} LIMIT 100
d4 = pd.read_csv("pd3.csv")
d4
| tempo | classe | triplas | |
|---|---|---|---|
| 0 | 0.172553 | Acórdão | 1 |
| 1 | 0.097054 | Agente | 1 |
| 2 | 1.988114 | Arma | 1 |
| 3 | 0.767093 | Arquivo | 1 |
| 4 | 0.089392 | Ativa | 1 |
| ... | ... | ... | ... |
| 127 | 0.087616 | Unidade Federativa | Estado | 1 |
| 128 | 0.088132 | Unidade Fiscal | 1 |
| 129 | 1.144308 | Usuário | 1 |
| 130 | 0.087564 | Órgão | 1 |
| 131 | 0.311462 | Evento | 1 |
132 rows × 3 columns
p = {'não tem label':d4[(d4['triplas']==0) | (d4['triplas']==-1)].shape[0],'tem label':d4.shape[0]-d4[(d4['triplas']==0) | (d4['triplas']==-1)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de classes com recursos com labels')
fig.show()
d4[(d4['triplas']==0) | (d4['triplas']==-1)]
| tempo | classe | triplas | |
|---|---|---|---|
| 15 | 26.794646 | Combustível | 0 |
| 53 | 0.088215 | Fornecedor Pessoa Física | 0 |
| 55 | 0.088111 | Fornecedor Restrito | 0 |
| 61 | 0.090053 | Inapta | 0 |
| 68 | 0.093272 | Nula | 0 |
| 72 | 0.077308 | Opção pelo regime SIMPLES | 0 |
| 92 | 0.093315 | Sancionado | 0 |
| 98 | 0.084827 | Situação Cadastral RFB | 0 |
| 112 | 0.085541 | Suspensa | 0 |
validas = d4
fig = px.histogram(validas, x="tempo",title="histograma de tempo de execução")
fig.show()
fig = px.histogram(validas[validas['tempo']<5], x="tempo",title="histograma de tempo de execução tempo [0,5)")
fig.show()
Estatísticas para consultas com tempo [0,5)
validas[validas['tempo']<5].describe()
| tempo | triplas | |
|---|---|---|
| count | 131.000000 | 131.000000 |
| mean | 0.266607 | 1.030534 |
| std | 0.428429 | 0.391033 |
| min | 0.067047 | 0.000000 |
| 25% | 0.088121 | 1.000000 |
| 50% | 0.119072 | 1.000000 |
| 75% | 0.236726 | 1.000000 |
| max | 2.738909 | 2.000000 |
Estatísticas para consultas com tempo [5,inf)
validas[validas['tempo']>=5].describe()
| tempo | triplas | |
|---|---|---|
| count | 1.000000 | 1.0 |
| mean | 26.794646 | 0.0 |
| std | NaN | NaN |
| min | 26.794646 | 0.0 |
| 25% | 26.794646 | 0.0 |
| 50% | 26.794646 | 0.0 |
| 75% | 26.794646 | 0.0 |
| max | 26.794646 | 0.0 |
Consultas com tempo [5,inf)
validas[validas['tempo']>=5].sort_values(by='tempo',ascending=False)
| tempo | classe | triplas | |
|---|---|---|---|
| 15 | 26.794646 | Combustível | 0 |
Exemplo:
prefix owl: \http://www.w3.org/2002/07/owl#\
prefix rdfs: \http://www.w3.org/2000/01/rdf-schema#\
select * where {
?s a <http://www.sefaz.ma.gov.br/ontology/Acordao>;
<http://www.sefaz.ma.gov.br/ontology/data_final> ?o.
} LIMIT 100
d5 = pd.read_csv("pd4.csv")
d5
| tempo | classe | propriedade | triplas | |
|---|---|---|---|---|
| 0 | 0.067079 | Acórdão | data final | 0 |
| 1 | 0.210497 | Agente | name | 100 |
| 2 | 0.143032 | Agente | nome | 100 |
| 3 | 0.642985 | Agente | tem solicitação | 0 |
| 4 | 0.313364 | Agente | tem tipo de contribuição | 100 |
| ... | ... | ... | ... | ... |
| 1044 | 0.085735 | Órgão | 0 | |
| 1045 | 0.088461 | Órgão | idêntico / igual / mesmo que / sameAs | 0 |
| 1046 | 0.847421 | Evento | tem solicitação | 100 |
| 1047 | 0.415812 | Evento | código do evento | 86 |
| 1048 | 0.293097 | Evento | descrição do evento | 66 |
1049 rows × 4 columns
d5[(d5['triplas']==0) | (d5['triplas']==-1)]
| tempo | classe | propriedade | triplas | |
|---|---|---|---|---|
| 0 | 0.067079 | Acórdão | data final | 0 |
| 3 | 0.642985 | Agente | tem solicitação | 0 |
| 6 | 0.069019 | Agente | cpf ou cnpj | 0 |
| 9 | 0.078687 | Agente | número de contato | 0 |
| 10 | 0.066887 | Agente | contact number | 0 |
| ... | ... | ... | ... | ... |
| 1041 | 0.125439 | Órgão | tem matriz | 0 |
| 1042 | 0.072407 | Órgão | cnpj raíz | 0 |
| 1043 | 0.076565 | Órgão | razão social | 0 |
| 1044 | 0.085735 | Órgão | 0 | |
| 1045 | 0.088461 | Órgão | idêntico / igual / mesmo que / sameAs | 0 |
518 rows × 4 columns
p = {'inválida':d5[(d5['triplas']==0) | (d5['triplas']==-1)].shape[0],'válida':d5.shape[0]-d5[(d5['triplas']==0) | (d5['triplas']==-1)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de propriedades de classes válidas')
fig.show()
d5['erro']='Não'
d5.loc[d5['triplas']==-1,'erro']='Sim'
p = d5['erro'].value_counts().reset_index(name="qtd")
fig = px.pie(p,values='qtd', names='index', title='Percentual de propriedades de classes que deram erro')
fig.show()
Consultas com erro
d5[d5['triplas']==-1]
| tempo | classe | propriedade | triplas | erro | |
|---|---|---|---|---|---|
| 117 | 1200.023847 | Compra Pública | tem item | -1 | Sim |
| 239 | 1200.011024 | Empresa | Organização | Pessoa Jurídica RFB | razão social | -1 | Sim |
p = {'propridade sem valor':d5[(d5['triplas']==0)].shape[0],'propridades com valor':d5.shape[0]-d5[(d5['triplas']==0)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de propriedades com valores por classe')
fig.show()
Consultas com retorno vazio
d5[(d5['triplas']==0)]
| tempo | classe | propriedade | triplas | erro | |
|---|---|---|---|---|---|
| 0 | 0.067079 | Acórdão | data final | 0 | Não |
| 3 | 0.642985 | Agente | tem solicitação | 0 | Não |
| 6 | 0.069019 | Agente | cpf ou cnpj | 0 | Não |
| 9 | 0.078687 | Agente | número de contato | 0 | Não |
| 10 | 0.066887 | Agente | contact number | 0 | Não |
| ... | ... | ... | ... | ... | ... |
| 1041 | 0.125439 | Órgão | tem matriz | 0 | Não |
| 1042 | 0.072407 | Órgão | cnpj raíz | 0 | Não |
| 1043 | 0.076565 | Órgão | razão social | 0 | Não |
| 1044 | 0.085735 | Órgão | 0 | Não | |
| 1045 | 0.088461 | Órgão | idêntico / igual / mesmo que / sameAs | 0 | Não |
516 rows × 5 columns
validas = d5[d5['triplas']!=-1]
fig = px.histogram(validas, x="tempo",title="histograma de tempo de execução")
fig.show()
fig = px.histogram(validas[validas['tempo']<5], x="tempo",title="histograma de tempo de execução com tempo [0,5)")
fig.show()
Estatísticas para consultas com tempo [0,5)
validas[validas['tempo']<5].describe()
| tempo | triplas | |
|---|---|---|
| count | 1014.000000 | 1014.000000 |
| mean | 0.326911 | 46.798817 |
| std | 0.558256 | 49.605959 |
| min | 0.055796 | 0.000000 |
| 25% | 0.068194 | 0.000000 |
| 50% | 0.086467 | 0.000000 |
| 75% | 0.287604 | 100.000000 |
| max | 4.492651 | 100.000000 |
Estatísticas para consultas com tempo [5,inf)
validas[validas['tempo']>=5].describe()
| tempo | triplas | |
|---|---|---|
| count | 33.000000 | 33.0 |
| mean | 103.545873 | 100.0 |
| std | 242.001240 | 0.0 |
| min | 5.778678 | 100.0 |
| 25% | 12.769300 | 100.0 |
| 50% | 17.528838 | 100.0 |
| 75% | 49.685935 | 100.0 |
| max | 1010.442889 | 100.0 |
Propriedades de classes com tempo [5,inf)
validas[validas['tempo']>=5].sort_values(by='tempo',ascending=False)
| tempo | classe | propriedade | triplas | erro | |
|---|---|---|---|---|---|
| 189 | 1010.442889 | Empresa | Organização | Pessoa Jurídica | opção por simples | 100 | Não |
| 237 | 981.421230 | Empresa | Organização | Pessoa Jurídica RFB | tem matriz | 100 | Não |
| 238 | 410.644847 | Empresa | Organização | Pessoa Jurídica RFB | cnpj raíz | 100 | Não |
| 985 | 133.038359 | Sócio | tem qualificação sócio | 100 | Não |
| 520 | 121.139600 | Estabelecimento RFB | contact number | 100 | Não |
| 519 | 117.774572 | Estabelecimento RFB | número de contato | 100 | Não |
| 524 | 93.792504 | Estabelecimento RFB | telefone | 100 | Não |
| 968 | 84.116714 | Suspensa | tem razão de situação cadastral | 100 | Não |
| 723 | 49.685935 | Pessoa Física | nome | 100 | Não |
| 702 | 46.797418 | Pessoa Física | CPF | 100 | Não |
| 722 | 45.764380 | Pessoa Física | name | 100 | Não |
| 523 | 42.911491 | Estabelecimento RFB | razão social | 100 | Não |
| 666 | 22.994622 | Nula | tem razão de situação cadastral | 100 | Não |
| 844 | 21.381872 | Situação Cadastral | tem razão de situação cadastral | 100 | Não |
| 859 | 20.653930 | Situação Cadastral RFB | tem razão de situação cadastral | 100 | Não |
| 112 | 19.810797 | Combustível | percentual de glp | 100 | Não |
| 110 | 17.528838 | Combustível | percentual de gás importado | 100 | Não |
| 111 | 16.189015 | Combustível | percentual de gás natural | 100 | Não |
| 70 | 15.913836 | Baixada | tem razão de situação cadastral | 100 | Não |
| 109 | 15.838735 | Combustível | descrição anp | 100 | Não |
| 455 | 15.834262 | Estabelecimento | razão social | 100 | Não |
| 528 | 15.569411 | Estabelecimento RFB | 100 | Não | |
| 481 | 15.477840 | Estabelecimento | data de início das atividades do estabelecimento | 100 | Não |
| 241 | 13.690763 | Empresa | Organização | Pessoa Jurídica RFB | idêntico / igual / mesmo que / sameAs | 100 | Não |
| 518 | 12.769300 | Estabelecimento RFB | nome fantasia | 100 | Não |
| 114 | 9.114910 | Combustível | valor de partida | 100 | Não |
| 913 | 8.514825 | Sociedade RFB | tem qualificação sócio | 100 | Não |
| 599 | 6.958552 | Inadimplente | tem inadimplencia | 100 | Não |
| 156 | 6.618603 | Documento Fiscal | tem consumidor | 100 | Não |
| 617 | 6.411215 | Inapta | tem razão de situação cadastral | 100 | Não |
| 229 | 6.310174 | Empresa | Organização | Pessoa Jurídica | idêntico / igual / mesmo que / sameAs | 100 | Não |
| 623 | 6.123698 | Item | tem documento fiscal | 100 | Não |
| 247 | 5.778678 | Empresa | Organização | Pessoa Jurídica SEFAZ | idêntico / igual / mesmo que / sameAs | 100 | Não |
Exemplo:
SELECT * where {
BIND(<http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/14769662491-10_05_2017-00371520167> as ?node)
{
?node ?p ?o .
filter(?p != <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>)
filter(isURI(?o))
}
OPTIONAL{
?s ?p2 ?node.
filter(?p2 != <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>)
filter(isURI(?s))
}
}
d6 = pd.read_csv("pd5.csv")
d6
| tempo | classe | recurso | triplas | |
|---|---|---|---|---|
| 0 | 0.883912 | Acórdão | http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/033.003.508-83-2019-11-20T17%3A30%3A00Z-020.012%2F2018-7 | 1 |
| 1 | 0.929922 | Agente | http://www.sefaz.ma.gov.br/resource/RFB/Agente/14%20LTD | 1 |
| 2 | 0.765692 | Arma | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Arma/5 | 0 |
| 3 | 1.597563 | Arquivo | http://www.sefaz.ma.gov.br/resource/REDESIM/Arquivo/701 | 1 |
| 4 | 0.807156 | Ativa | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/ATIVA-36456492000171-2022_03_15 | 0 |
| ... | ... | ... | ... | ... |
| 127 | 0.697907 | Unidade Federativa | Estado | http://www.sefaz.ma.gov.br/resource/DOMINIO/Unidade_Federativa/MG | 0 |
| 128 | 0.706270 | Unidade Fiscal | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Unidade_Fiscal/1 | 0 |
| 129 | 1.003709 | Usuário | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Usuario/1088772 | 0 |
| 130 | 1.053028 | Órgão | http://www.sefaz.ma.gov.br/resource/CEIS/Orgao/MINISTÉRIO%20DA%20AGRICULTURA%2C%20PECUÁRIA%20E%20ABASTECIMENTO | 48 |
| 131 | 1.294782 | Evento | http://www.sefaz.ma.gov.br/resource/REDESIM/Evento/691 | 44 |
132 rows × 4 columns
d6[(d6['triplas']==0) | (d6['triplas']==-1)]
| tempo | classe | recurso | triplas | |
|---|---|---|---|---|
| 2 | 0.765692 | Arma | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Arma/5 | 0 |
| 4 | 0.807156 | Ativa | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/ATIVA-36456492000171-2022_03_15 | 0 |
| 7 | 1.002865 | Baixa de Ofício | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/BAIXA_DE_OFICIO-42530404000137-2022_02_16 | 0 |
| 8 | 0.897775 | Baixada | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/BAIXADA-22677362000154-2016_05_30 | 0 |
| 9 | 0.729352 | CEP do Logradouro | http://www.sefaz.ma.gov.br/resource/DOMINIO/CEP_Logradouro/01019030 | 0 |
| 10 | 0.693887 | Cancelada | http://www.sefaz.ma.gov.br/resource/REDESIM/Situacao_Cadastral/CANCELADA-13891945000192-2011_06_30 | 0 |
| 11 | 0.777922 | Caso da consistência | http://www.sefaz.ma.gov.br/resource/Caso_Consistencia/2.1 | 0 |
| 12 | 0.735415 | Caso da similaridade | http://www.sefaz.ma.gov.br/resource/Caso_Similaridade/1 | 0 |
| 15 | 35.936770 | Combustível | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Combustivel/140468 | 0 |
| 16 | 1200.101326 | Compra Pública | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Compra_Publica/5613 | -1 |
| 17 | 1.182168 | Consumidor | http://www.sefaz.ma.gov.br/resource/C115/Consumidor/0 | 0 |
| 30 | 1.362120 | Documento | http://xmlns.com/foaf/0.1/Document/CARTEIRA_DE_IDENTIDADE_PROFISSIONAL | 0 |
| 32 | 0.704901 | Emancipado | http://www.sefaz.ma.gov.br/resource/REDESIM/Emancipado/70927600382 | 0 |
| 33 | 1.001164 | Empresa Holding | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Empresa/1005728000179 | -1 |
| 36 | 0.854859 | Empresa | Organização | Pessoa Jurídica SEFAZ | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Empresa/12000060 | -1 |
| 44 | 0.746318 | Entidade Integrada | http://www.sefaz.ma.gov.br/resource/REDESIM/Entidade_Integrada/9921 | 0 |
| 56 | 0.204907 | Grupo | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Empresa/1005728000179 | -1 |
| 62 | 1.271009 | Infração | http://www.sefaz.ma.gov.br/resource/CEI/Infracao/1 | 0 |
| 65 | 0.707443 | Medicamento | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Medicamento/306889553 | 0 |
| 66 | 0.809579 | Nacionalidade | http://www.sefaz.ma.gov.br/resource/REDESIM/Nacionalidade/BRASILEIRA | 0 |
| 67 | 0.847466 | Natureza Legal | Natureza Jurídica | http://www.sefaz.ma.gov.br/resource/DOMINIO/Natureza_Legal/1309 | 0 |
| 69 | 0.724032 | Não Contribuinte | http://www.sefaz.ma.gov.br/resource/DOMINIO/Nao_Contribuinte_ICMS/59080 | 0 |
| 70 | 0.713201 | Obrigação | http://www.sefaz.ma.gov.br/resource/CEI/Obrigacao/%20Implantação%20de%20Iluminação%20Pública%20na%20Av.%20Anita%20Viana | 0 |
| 72 | 1.427127 | Opção pelo regime SIMPLES | http://www.sefaz.ma.gov.br/resource/RFB/Opcao_Simples/NAO-00000000 | 0 |
| 74 | 0.691664 | País | http://www.sefaz.ma.gov.br/resource/DOMINIO/Pais/AFEGANISTAO | 0 |
| 75 | 0.720039 | Periodicidade | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Periodicidade/ANUAL | 0 |
| 80 | 1.629213 | Porte da Empresa | Porte Empresarial | Porte | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Porte/PEQUENO_PORTE | 0 |
| 82 | 0.746064 | Produto | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Medicamento/296036135 | 0 |
| 83 | 0.684033 | Protocolo | http://www.sefaz.ma.gov.br/resource/REDESIM/Protocolo/MAP1601343249 | 0 |
| 85 | 0.697298 | Qualificação do Sócio ou Representante | http://www.sefaz.ma.gov.br/resource/DOMINIO/Qualificacao/ACIONISTA | 0 |
| 86 | 0.736441 | Razão | Motivo de Situação Cadastral | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Razao_Situacao_Cadastral/1 | 0 |
| 91 | 0.228929 | Representante Legal Jurídico | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Empresa/1005728000179 | -1 |
| 94 | 1.714113 | Seção CNAE | http://www.sefaz.ma.gov.br/resource/DOMINIO/Atividade_Economica/CNAE_1.0_SECAO-EDUCACAO | 0 |
| 95 | 0.705919 | Situação Cadastral | http://www.sefaz.ma.gov.br/resource/REDESIM/Situacao_Cadastral/ATIVA-19531053000167-2014_01_15 | 0 |
| 96 | 3.024848 | Situação Cadastral Cadastro da SEFAZ | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/SUSPENSA_DE_OFICIO-39379519000168-2022_02_14 | 0 |
| 97 | 0.068602 | Situação Cadastral REDESIM | http://www.sefaz.ma.gov.br/resource/REDESIM/Situacao_Cadastral/ATIVA-19531053000167-2014_01_15 | 0 |
| 98 | 0.787001 | Situação Cadastral RFB | http://www.sefaz.ma.gov.br/resource/RFB/Situacao_Cadastral/ATIVA-00000000000191-2005_11_03 | 0 |
| 99 | 0.800403 | Situação Fiscal | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Fiscal/12119652-DESABILITADO | 0 |
| 100 | 1.607141 | Situação especial | http://www.sefaz.ma.gov.br/resource/RFB/Situacao_Especial/00002342-1998_02_13 | 0 |
| 109 | 0.824766 | Status de Envio | http://www.sefaz.ma.gov.br/resource/REDESIM/Status_Envio/PENDENTE_ENVIO | 0 |
| 113 | 1.601108 | Suspensa de Ofício | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/SUSPENSA_DE_OFICIO-39379519000168-2022_02_14 | 0 |
| 118 | 1.926713 | Tipo Ato | http://www.sefaz.ma.gov.br/resource/REDESIM/Tipo_Ato/INSCRICAO | 0 |
| 119 | 0.722155 | Tipo de Contribuição | http://www.sefaz.ma.gov.br/resource/DOMINIO/Tipo_Contribuicao/NAO_CONTRIBUINTE_DO_ICMS | 0 |
| 120 | 0.670316 | Tipo de Propriedade | http://www.sefaz.ma.gov.br/resource/REDESIM/Tipo_Propriedade/PROPRIO | 0 |
| 121 | 2.452307 | Tipo de Regime Tributário | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Tipo_Regime_Tributario/SIMPLES_NACIONAL | 0 |
| 122 | 0.686525 | Tipo do Estabelecimento | http://www.sefaz.ma.gov.br/resource/DOMINIO/Tipo_Estabelecimento/FILIAL | 0 |
| 127 | 0.697907 | Unidade Federativa | Estado | http://www.sefaz.ma.gov.br/resource/DOMINIO/Unidade_Federativa/MG | 0 |
| 128 | 0.706270 | Unidade Fiscal | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Unidade_Fiscal/1 | 0 |
| 129 | 1.003709 | Usuário | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Usuario/1088772 | 0 |
p = {'inválida':d6[(d6['triplas']==0) | (d6['triplas']==-1)].shape[0],'válida':d6.shape[0]-d6[(d6['triplas']==0) | (d6['triplas']==-1)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de propriedades de classes válidas')
fig.show()
d6['erro'] = 'Não'
d6.loc[d6['triplas']==-1,'erro']='Sim'
p = d6['erro'].value_counts().reset_index(name="qtd")
fig = px.pie(p,values='qtd', names='index', title='Percentual de recursos que deram erro')
fig.show()
p = {'nós sem relações':d6[(d6['triplas']==0)].shape[0],'nós com relações':d6.shape[0]-d6[(d6['triplas']==0)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual nós sem relações por classe')
fig.show()
validas = d6[(d6['triplas']!=0) & (d6['triplas']!=-1)]
fig = px.histogram(validas, x="tempo",title="histograma de tempo de execução")
fig.show()
fig = px.histogram(validas[validas['tempo']<30], x="tempo",title="histograma de tempo de execução com tempo [0,30)")
fig.show()
fig = px.histogram(validas[validas['tempo']>=8], x="tempo",title="histograma de tempo de execução com tempo [8,inf)")
fig.show()
Estatísticas para consultas com tempo [0,8)
validas[validas['tempo']<8].describe()
| tempo | triplas | |
|---|---|---|
| count | 71.000000 | 71.000000 |
| mean | 1.937754 | 8.704225 |
| std | 1.724744 | 21.794753 |
| min | 0.083534 | 1.000000 |
| 25% | 0.845774 | 1.000000 |
| 50% | 1.112129 | 2.000000 |
| 75% | 2.462908 | 6.000000 |
| max | 7.574658 | 155.000000 |
Estatísticas para consultas com tempo [8,inf)
validas[validas['tempo']>=8].describe()
| tempo | triplas | |
|---|---|---|
| count | 12.000000 | 12.000000 |
| mean | 60.207147 | 4391.333333 |
| std | 68.012667 | 14991.703865 |
| min | 8.243907 | 1.000000 |
| 25% | 13.889957 | 2.000000 |
| 50% | 38.542310 | 18.500000 |
| 75% | 67.244849 | 96.000000 |
| max | 230.465748 | 51995.000000 |
Recursos com tempo [8,inf)
validas[validas['tempo']>=8].sort_values(by='tempo',ascending=False)
| tempo | classe | recurso | triplas | erro | |
|---|---|---|---|---|---|
| 13 | 230.465748 | Cidade | Município | http://www.sefaz.ma.gov.br/resource/DOMINIO/Cidade/VILA%20SAO%20FRANCISCO-AL | 2 | Não |
| 123 | 155.653036 | Unidade Consumo | http://www.sefaz.ma.gov.br/resource/C115/Unidade_Consumo/0000000001 | 408 | Não |
| 6 | 84.607309 | Bairro | http://www.sefaz.ma.gov.br/resource/DOMINIO/Bairro/14_DE_NOVEMBRO-CASCAVEL | 55 | Não |
| 5 | 61.457363 | Atividade Econômica | http://www.sefaz.ma.gov.br/resource/DOMINIO/Atividade_Economica/CNAE_1.0_CLASSE-ALUGUEL_DE_AERONAVES | 1 | Não |
| 45 | 46.526650 | Estabelecimento | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Estabelecimento/12702325 | 96 | Não |
| 48 | 39.710827 | Estabelecimento SEFAZ | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Estabelecimento/12702325 | 96 | Não |
| 111 | 37.373793 | Subclasse CNAE | http://www.sefaz.ma.gov.br/resource/DOMINIO/Atividade_Economica/2731700 | 51995 | Não |
| 47 | 20.051308 | Estabelecimento RFB | http://www.sefaz.ma.gov.br/resource/RFB/Estabelecimento/00000000000191 | 25 | Não |
| 64 | 14.309459 | Logradouro | http://www.sefaz.ma.gov.br/resource/DOMINIO/Logradouro/01001000-SE | 3 | Não |
| 60 | 12.631450 | Inadimplência | http://www.sefaz.ma.gov.br/resource/CEI/Inadimplencia/10000100-2875068000140-20%2F09%2F05%2000%3A00%3A00-20%2F09%2F05%2000%3A00%3A00 | 2 | Não |
| 14 | 11.454910 | Classe CNAE | http://www.sefaz.ma.gov.br/resource/DOMINIO/Atividade_Economica/CNAE_1.0_CLASSE-ALUGUEL_DE_AERONAVES | 1 | Não |
| 77 | 8.243907 | Pessoa Física Cadastro SEFAZ | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Pessoa/2010305 | 12 | Não |
Exemplo:
SELECT * where {
BIND(<http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/14769662491-10_05_2017-00371520167> as ?node)
?node ?p ?o .
filter(?p != <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>)
filter(isURI(?o))
?o ?p3 ?o2.
filter(?p3 != <http://www.w3.org/1999/02/22-rdf-syntax-ns#type>)
filter(isURI(?o2))
}
d7 = pd.read_csv("pd6.csv")
d7
| tempo | classe | recurso | triplas | |
|---|---|---|---|---|
| 0 | 1.548095 | Acórdão | http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/033.003.508-83-2019-11-20T17%3A30%3A00Z-020.012%2F2018-7 | 0 |
| 1 | 1.244227 | Agente | http://www.sefaz.ma.gov.br/resource/RFB/Agente/14%20LTD | 0 |
| 2 | 0.974305 | Arma | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Arma/5 | 0 |
| 3 | 1.407388 | Arquivo | http://www.sefaz.ma.gov.br/resource/REDESIM/Arquivo/701 | 0 |
| 4 | 0.906579 | Ativa | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/ATIVA-36456492000171-2022_03_15 | 0 |
| ... | ... | ... | ... | ... |
| 127 | 0.955901 | Unidade Federativa | Estado | http://www.sefaz.ma.gov.br/resource/DOMINIO/Unidade_Federativa/MG | 0 |
| 128 | 0.835701 | Unidade Fiscal | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Unidade_Fiscal/1 | 0 |
| 129 | 1.026858 | Usuário | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Usuario/1088772 | 0 |
| 130 | 0.906528 | Órgão | http://www.sefaz.ma.gov.br/resource/CEIS/Orgao/MINISTÉRIO%20DA%20AGRICULTURA%2C%20PECUÁRIA%20E%20ABASTECIMENTO | 0 |
| 131 | 3.665489 | Evento | http://www.sefaz.ma.gov.br/resource/REDESIM/Evento/691 | 202 |
132 rows × 4 columns
d7[(d7['triplas']==0) | (d7['triplas']==-1)]
| tempo | classe | recurso | triplas | |
|---|---|---|---|---|
| 0 | 1.548095 | Acórdão | http://www.sefaz.ma.gov.br/resource/Restricoes/Acordao/033.003.508-83-2019-11-20T17%3A30%3A00Z-020.012%2F2018-7 | 0 |
| 1 | 1.244227 | Agente | http://www.sefaz.ma.gov.br/resource/RFB/Agente/14%20LTD | 0 |
| 2 | 0.974305 | Arma | http://www.sefaz.ma.gov.br/resource/Compras_Publicas/Arma/5 | 0 |
| 3 | 1.407388 | Arquivo | http://www.sefaz.ma.gov.br/resource/REDESIM/Arquivo/701 | 0 |
| 4 | 0.906579 | Ativa | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Situacao_Cadastral/ATIVA-36456492000171-2022_03_15 | 0 |
| ... | ... | ... | ... | ... |
| 122 | 1.167729 | Tipo do Estabelecimento | http://www.sefaz.ma.gov.br/resource/DOMINIO/Tipo_Estabelecimento/FILIAL | 0 |
| 127 | 0.955901 | Unidade Federativa | Estado | http://www.sefaz.ma.gov.br/resource/DOMINIO/Unidade_Federativa/MG | 0 |
| 128 | 0.835701 | Unidade Fiscal | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Unidade_Fiscal/1 | 0 |
| 129 | 1.026858 | Usuário | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Usuario/1088772 | 0 |
| 130 | 0.906528 | Órgão | http://www.sefaz.ma.gov.br/resource/CEIS/Orgao/MINISTÉRIO%20DA%20AGRICULTURA%2C%20PECUÁRIA%20E%20ABASTECIMENTO | 0 |
85 rows × 4 columns
p = {'inválidas':d7[(d7['triplas']==0) | (d7['triplas']==-1)].shape[0],'válidas':d7.shape[0]-d7[(d7['triplas']==0) | (d7['triplas']==-1)].shape[0]}
p=pd.DataFrame([p]).T.reset_index().rename(columns={0:'qtd','index':'tipo'})
fig = px.pie(p,values='qtd', names='tipo', title='Percentual de recursos com duas propriedades em cadeia por classe válidos')
fig.show()
d7['erro'] = 'Não'
d7.loc[d7['triplas']==-1,'erro']='Sim'
p = d7['erro'].value_counts().reset_index(name="qtd")
fig = px.pie(p,values='qtd', names='index', title='Percentual de recursos que deram erro')
fig.show()
validas = d7[(d7['triplas']!=0) & (d7['triplas']!=-1)]
fig = px.histogram(validas, x="tempo",title="histograma de tempo de execução")
fig.show()
fig = px.histogram(validas[validas['tempo']<=19], x="tempo",title="histograma de tempo de execução com tempo [0,19]")
fig.show()
Estatísticas para consultas com tempo [0,8)
validas[validas['tempo']<8].describe()
| tempo | triplas | |
|---|---|---|
| count | 42.000000 | 42.000000 |
| mean | 3.080048 | 10.595238 |
| std | 1.901343 | 30.776186 |
| min | 0.290002 | 1.000000 |
| 25% | 1.660683 | 2.000000 |
| 50% | 2.305517 | 4.000000 |
| 75% | 3.949586 | 10.000000 |
| max | 7.920607 | 202.000000 |
Estatísticas para consultas com tempo [8,inf)
validas[validas['tempo']>=8].describe()
| tempo | triplas | |
|---|---|---|
| count | 5.000000 | 5.000000 |
| mean | 50.596377 | 55.600000 |
| std | 78.356001 | 40.221885 |
| min | 8.370968 | 10.000000 |
| 25% | 13.875924 | 23.000000 |
| 50% | 13.944746 | 67.000000 |
| 75% | 26.533829 | 67.000000 |
| max | 190.256416 | 111.000000 |
Consultas com tempo [8,inf)
validas[validas['tempo']>=8].sort_values(by='tempo',ascending=False)
| tempo | classe | recurso | triplas | erro | |
|---|---|---|---|---|---|
| 36 | 190.256416 | Empresa | Organização | Pessoa Jurídica SEFAZ | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Empresa/12000060 | 23 | Não |
| 45 | 26.533829 | Estabelecimento | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Estabelecimento/12702325 | 67 | Não |
| 35 | 13.944746 | Empresa | Organização | Pessoa Jurídica REDESIM | http://www.sefaz.ma.gov.br/resource/REDESIM/Empresa/16506549 | 111 | Não |
| 48 | 13.875924 | Estabelecimento SEFAZ | http://www.sefaz.ma.gov.br/resource/Cadastro_SEFAZ-MA/Estabelecimento/12702325 | 67 | Não |
| 18 | 8.370968 | Contador | http://www.sefaz.ma.gov.br/resource/REDESIM/Pessoa/725323 | 10 | Não |